package com.hex.ds.hdtp.core.inf.script.common.service;

import com.hex.hdtp.scf.basic.convert.entity.ConvertConfig;
import com.hex.hdtp.scf.basic.convert.entity.ConvertResult;

import java.util.List;

/**
 * @Package com.hex.ds.hdtp.core.inf.script.transfer.service
 * @ClassName IScriptConvertService
 * @Description 脚本转换-spi接口
 * @Author gj.xu
 * @Date 2023/12/1 13:26
 * @Version v2.0
 **/
public interface IScriptConvertService {

    /**
     * 获取 SCF 对应 SPI 并转换
     *
     * @param convertType
     * @param convertConfig
     * @return
     */
    ConvertResult scriptConvert(String convertType, ConvertConfig convertConfig);

    /**
     * 获取 SCF 对应 SPI 并分析
     *
     * @param convertType
     * @param convertConfig
     * @return
     */
    ConvertResult scriptAnalyze(String convertType, ConvertConfig convertConfig);

    /**
     * 获取脚本 SCF 插件类型
     *
     * @return
     */
    List<String> scriptConvertType();

}
